<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/EAppointments.BMS.Services.Contracts" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/EAppointments.BMS.Services.Contracts" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:24444/EAppointments.BMS.Host/DirectoryService.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:complexType name="PatientSearchCriteria">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="ReferrerId" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PatientSearchCriteria" nillable="true" type="tns:PatientSearchCriteria" />
  <xs:complexType name="PatientCollection">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Patient" nillable="true" type="tns:Patient" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PatientCollection" nillable="true" type="tns:PatientCollection" />
  <xs:complexType name="Patient">
    <xs:sequence>
      <xs:element name="Id" type="ser:guid" />
      <xs:element name="PatientNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Gender" type="ser:char" />
      <xs:element minOccurs="0" name="DateOfBirth" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="AddressLine1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AddressLine2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="City" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="State" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Country" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ZipCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ContactNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element name="Referrer" nillable="true" type="tns:Referrer" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Patient" nillable="true" type="tns:Patient" />
  <xs:complexType name="Referrer">
    <xs:sequence>
      <xs:element name="Id" type="ser:guid" />
      <xs:element name="FirstName" nillable="true" type="xs:string" />
      <xs:element name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ClinicName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Referrer" nillable="true" type="tns:Referrer" />
  <xs:complexType name="DirectoryServiceFault">
    <xs:sequence>
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="DirectoryServiceFault" nillable="true" type="tns:DirectoryServiceFault" />
  <xs:complexType name="SystemFault">
    <xs:sequence>
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SystemFault" nillable="true" type="tns:SystemFault" />
  <xs:complexType name="ReferrerSearchCriteria">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ReferrerSearchCriteria" nillable="true" type="tns:ReferrerSearchCriteria" />
  <xs:complexType name="ReferrerCollection">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Referrer" nillable="true" type="tns:Referrer" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ReferrerCollection" nillable="true" type="tns:ReferrerCollection" />
  <xs:complexType name="SpecialtyCollection">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Specialty" nillable="true" type="tns:Specialty" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SpecialtyCollection" nillable="true" type="tns:SpecialtyCollection" />
  <xs:complexType name="Specialty">
    <xs:sequence>
      <xs:element name="Id" type="ser:guid" />
      <xs:element name="Name" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Specialty" nillable="true" type="tns:Specialty" />
  <xs:complexType name="ClinicTypeCollection">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ClinicType" nillable="true" type="tns:ClinicType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ClinicTypeCollection" nillable="true" type="tns:ClinicTypeCollection" />
  <xs:complexType name="ClinicType">
    <xs:sequence>
      <xs:element name="Id" type="ser:guid" />
      <xs:element name="Specialty" nillable="true" type="tns:Specialty" />
      <xs:element name="Name" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ClinicType" nillable="true" type="tns:ClinicType" />
</xs:schema>